package voice

type ReqVoiceAsr struct {
	// Appkey                         string `json:"appkey"`                                      //应用 appkey，必填，专有云为 default
	Format                         string `json:"format,omitempty"`                            //音频编码格式，可选，支持的格式:pcm（无压缩的 pcm 文件或 wav 文件）、opus，默认是 pcm
	SampleRate                     int    `json:"sample_rate,omitempty"`                       //音频采样率，可选，16000 或者 8000，默认是 16000
	EnablePunctuationPrediction    bool   `json:"enable_punctuation_prediction,omitempty"`     //是否在后处理中添加标点，可选，true或者 false，默认 false 不开启
	EnableInverseTextNormalization bool   `json:"enable_inverse_text_normalization,omitempty"` //是否在后处理中执行 ITN，可选，true或者 false，默认 false 不开启
	EnableVoiceDetection           bool   `json:"enable_voice_detection,omitempty"`            //是否启动语音检测，可选，true 或者false，默认 false 不开启。说明:如果开启语音检测，服务端会对上传的音频智能语音 V2.X 【公开】 文档版本:202101 VII 进行静音检测，切除静音部分和之后的语音内容，不再对其进行识别；不同的模型表现结果不同。
	Model                          string `json:"model,omitempty"`                             //模型名称，可选，若不设置则使用默认模型
	CustomizationId                string `json:"customization_id,omitempty"`                  //定制模型 Id，可选
	VocabularyId                   string `json:"vocabulary_id,omitempty"`                     //泛热词 Id，可选
	BodyAsr                        []byte
}

type RespVoiceAsr struct {
	TaskId  string `json:"task_id"`
	Result  string `json:"result"`
	Status  int    `json:"status"`
	Message string `json:"message"`
}

type CodeAsc struct {
	Code int
	Msg  string
}

var CodeAscs = []CodeAsc{
	{20000000, "请求成功"},
	{40000000, "默认的客户端错误码 查看错误消息或提交工单"},
	{40000001, "身份认证失败 检查使用的令牌是否正确，是否过期智能语音 V2.X 【公开】 文档版本:202101 IX "},
	{40000002, "无效的消息 检查发送的消息是否符合要求"},
	{40000003, "无效的参数 检查参数值设置是否合理"},
	{40000004, "空闲超时 确认是否长时间没有发送数据掉服务端"},
	{40000005, "请求数量过多 检查是否超过了并发连接数或者每秒钟请求数"},
	{50000000, "默认的服务端错误 如果偶现可以忽略，重复出现请提交工单"},
	{50000001, "内部 GRPC 调用错误 如果偶现可以忽略，重复出现请提交工单"},
}
